using System;
using System.Data;
using System.Collections;
using System.Collections.Specialized;
using FluentNHibernate.Mapping;
using Novapangeia.Dominio;

namespace NovaPangeia.Mapping
{
    public class TropaMapping : ClassMap<Tropa>
    {
        public TropaMapping() 
        {
            Table("tropa");

            Id(x => x.Id, "id").UnsavedValue(0);
            Map(x => x.Nome, "nome");
            Map(x => x.Guarda, "guarda");
            Map(x => x.Localizacao_x, "destino_x");
            Map(x => x.Localizacao_y, "destino_y");

            References(x => x.Usuario, "usuario_id")
                .Not.Nullable();

            HasMany(x => x.Unidades)
                .KeyColumn("tropa_id")
                .Cascade.All();
        }
    }
}